Что такое OpenSSH
OpenSSH (Open Secure Shell) — это набор инструментов для безопасного подключения к другим компьютерам или серверам через интернет.
Через OpenSSH можно:
-
управлять сервером
-
копировать файлы (SFTP, SCP)
-
работать с роутерами и NAS
-
автоматизировать задачи с помощью скриптов
2️⃣ Проверка версии
Откройте PowerShell или CMD:
ssh -V
Пример вывода:
OpenSSH_for_Windows_9.5p1, LibreSSL 3.8.2
3️⃣ Установка OpenSSH на Windows
3.1 Проверка наличия клиента
ssh -V
-
Если команда найдена — клиент уже установлен
-
Если нет — продолжаем
3.2 Установка через GUI
-
Параметры → Приложения → Дополнительные компоненты → Добавить компонент
-
Найти OpenSSH Client → установить
-
Перезапустить PowerShell
3.3 Установка через PowerShell
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
4️⃣ Генерация SSH-ключей
SSH-ключи безопаснее пароля.
4.1 Создание ключа Ed25519
ssh-keygen -t ed25519 -C "my-windows-pc"
-
Нажимай Enter, чтобы сохранить в
C:\Users\<имя>\.ssh\id_ed25519 -
Можно задать пароль ключа для дополнительной безопасности
4.2 Пояснение «на пальцах»
-
Приватный ключ (
id_ed25519) — твоя «личная подпись», никому не показывать -
Публичный ключ (
id_ed25519.pub) — сервер его использует, чтобы подтвердить, что это вы
5️⃣ Подключение к серверу
5.1 По паролю
ssh user@server.com
-
Первый раз появится предупреждение о ключе сервера → вводишь
yes -
Вводишь пароль пользователя → подключение установлено
5.2 По ключу
ssh -i C:\Users\<имя>\.ssh\id_ed25519 user@server.com
Если ключ защищён паролем — система запросит пароль ключа.
6️⃣ Использование ssh-agent для запароленного ключа
ssh-agent позволяет не вводить пароль ключа каждый раз.
6.1 Запуск ssh-agent
Start-Service ssh-agent
6.2 Добавление ключа
ssh-add C:\Users\<имя>\.ssh\id_ed25519
-
Введи пароль один раз
-
Ключ хранится в памяти до перезагрузки
6.3 Проверка добавленных ключей
ssh-add -l
7️⃣ Настройка конфигурационного файла
Файл:
C:\Users\<имя>\.ssh\config
Пример:
Host myserver
HostName example.com
User user
Port 22
IdentityFile C:\Users\<имя>\.ssh\id_ed25519
Теперь подключение проще:
ssh myserver
8️⃣ Передача файлов (SFTP)
OpenSSH включает SFTP для безопасной передачи файлов.
8.1 Подключение
sftp user@server.com
Если ключ добавлен в ssh-agent — пароль не спрашивается.
8.2 Основные команды
| Команда | Действие |
|---|---|
ls |
список файлов на сервере |
cd |
смена папки на сервере |
pwd |
текущая папка на сервере |
lpwd |
текущая папка на локальном ПК |
get file.txt |
скачать файл |
put file.txt |
загрузить файл |
get -r dir |
скачать папку |
put -r dir |
загрузить папку |
exit |
выйти |
| 9️⃣ SCP — простой способ копирования |
scp file.txt user@server.com:/remote/path
- Для папок:
scp -r myfolder user@server.com:/remote/path
Примечание: SFTP более современный и безопасный, но SCP удобен для скриптов.
10️⃣ Полезные советы
-
Portable-подход: можно хранить
.sshна флешке и использовать ключи на любом ПК -
Безопасность: не хранить приватные ключи в общедоступных папках
-
Автоматизация: можно писать скрипты с SFTP/SCP для резервного копирования
-
Совместимость: OpenSSH полностью совместим с Linux/macOS
-
С GUI клиентами: MobaXterm и Termius используют те же ключи, но добавляют визуальный интерфейс и SFTP рядом с терминалом
11️⃣ Проверка готовности
-
ssh -V— версия клиента -
ssh-add -l— ключи добавлены в агент -
ssh user@server.com— подключение проходит -
sftp user@server.com— файлы передаются
12️⃣ Таблица «что умеет OpenSSH на Windows»
| Возможность | Есть / Нет | Примечание |
|---|---|---|
| Подключение SSH | ✅ | Терминал PowerShell |
| Подключение по ключу | ✅ | Ed25519, RSA |
| Пароль ключа + ssh-agent | ✅ | Хранение ключей в памяти |
| SFTP | ✅ | Консольный, GUI через MobaXterm/Termius |
| SCP | ✅ | Удобно для скриптов |
| Portable | ⚠️ | Можно использовать с флешки, настройки .ssh |
| GUI | ❌ | Но есть MobaXterm / Termius |
| ### 📌 Итог |
OpenSSH на Windows — мощный, безопасный и полностью бесплатный инструмент.
С этим гайдом ты сможешь:
-
подключаться по паролю и ключу
-
использовать SFTP и SCP
-
автоматизировать задачи
-
хранить ключи безопасно
-
работать как профи, но без лишней головной боли